
package com.insigma.business.qrcode.soldier.service;


import com.insigma.business.qrcode.soldier.dto.PlacementSoldierInfoBSearcher;
import com.insigma.business.qrcode.soldier.entity.PlacementSoldierInfoDO;

import java.util.List;


public interface PlacementSoldierInfoService {

    
    List<PlacementSoldierInfoDO> search(final PlacementSoldierInfoBSearcher innerSearcher);

    
    PlacementSoldierInfoDO get(final String id);

    
    Integer insert(final PlacementSoldierInfoDO placementSoldierInfo);

    
    Integer update(final PlacementSoldierInfoDO placementSoldierInfo);

    
    Integer delete(final String id, final String modifierType, final String modifierId);

    
    PlacementSoldierInfoDO getByPlacementIdAndIdCardNo(String placementId, String idCardNo);

    
    PlacementSoldierInfoDO getByPlacementIdAndMobile(String placementId, String mobile);

    PlacementSoldierInfoDO getBySoldierId(String soldierId);

    PlacementSoldierInfoDO getByIdCardNo(String idCardNo);

    List<String> listSoldierIdsOrderByRank(String placementId);

    List<String> listIdCardNoOrderByRank(String placementId);

    List<PlacementSoldierInfoDO> listAllNotRecruitSoldier(String placementId);

    PlacementSoldierInfoDO getByMobile(String mobile);

    List<PlacementSoldierInfoDO> listByBatchId(String batchId);

    String getIdCardNoBySoldierId(String soldierId);


    Integer count(PlacementSoldierInfoBSearcher placementSoldierInfoBSearcher);

    Integer publishAllSoldier(String placementId, String modifierId, String modifierType);

    List<PlacementSoldierInfoDO> listByPositionId(String positionId);

    List<PlacementSoldierInfoDO> listShortInfoByPlacement(String placementId);

    Integer countSuccess(PlacementSoldierInfoBSearcher soldierInfoBSearcher);

    Boolean checkPass(String idCardNo, String checkType);

    List<PlacementSoldierInfoDO> listSoldierByPositionBatch(String batchId);

    PlacementSoldierInfoDO getByName(String realName, String placementId);
}
